Some computing environments have resources that are reconfigurable to provide the computing environment with the flexibility to perform various tasks. Such a computing environment can be referred to as a configurable computing environment. Resources in a configurable computing environment may be repeatedly reassigned or reallocated (e.g., dynamically) to jobs based on the characteristics of the job, which can help ensure that that job has the necessary resources to be performed. For example, a configurable computing environment can include various computing resources, such as processing threads, memory (e.g., random access memory, virtual memory, or cache space), virtual machines, software applications, databases, network throughput, input/output ports, hardware devices (e.g., processing devices, hard disks, memory devices), or any combination of these. And the configurable computing environment can allocate some or all of these resources to a job based on the size of the job.